Laser printhead raster path configuration for modifying a rewriteable label

ABSTRACT

A label modification unit may receive a label modification input associated with an image. The label modification unit may process, using an image filtering, the label modification input to convert the image to a bitmap for raster printing the image via a laser printhead. The label modification unit may determine, based on the bitmap, an array of power factors for a light beam that is configured to be emitted by a laser of the laser printhead and raster print the image. The label modification unit may control the laser of the laser printhead in association with raster printing the image on a rewriteable label according to the array of power factors.

BACKGROUND

Laser printing involves the production of text and graphics by passing alight beam over a material. Laser attributes may be varied to write orerase content. A laser printhead can be configured to either write orerase content from a rewriteable label based on photothermal propertiesof the rewriteable label. For example, the laser printhead may bepreconfigured to emit the light beam at one power level or with one spotsize to write content to the rewriteable label, or the laser printheadmay be preconfigured to emit the light beam at another power level orwith another spot size to erase content from the rewriteable label.

During raster printing, the raster path of the laser printhead canaffect heat dissipation of pixels due to the laser printhead writing orerasing content adjacent a pixel that was recently written or erased.Accordingly, there is a need to consider the heat dissipation of pixelsof a rewriteable label when the laser printhead is writing and/orerasing content along a raster path and/or a need to determine a rasterpath to prevent heat dissipation of a portion of a rewriteable labelbeing affected by content of another pixel being written or erased.

SUMMARY

According to some implementations, a method may include receiving alabel modification input associated with an image; processing, using animage filtering, the label modification input to convert the image to abitmap for raster printing the image via a laser printhead; determining,based on the bitmap, an array of power factors for a light beam that isconfigured to be emitted by a laser of the laser printhead and rasterprint the image; and controlling the laser of the laser printhead inassociation with raster printing the image on a rewriteable labelaccording to the array of power factors.

According to some implementations, a device may include a memory and aprocessor. In some implementations, the processor is communicativelycoupled to the memory. The processor may be configured to receive animage; convert the image to a bitmap for raster printing the image via alaser printhead; determine, based on the bitmap, an array of powerfactors for a light beam that is configured to be emitted by a laser ofthe laser printhead; and cause the laser printhead to emit the lightbeam to raster print the image on a rewriteable label according to thearray of power factors.

According to some implementations, a label modification unit may includea laser configured to emit a light beam to modify a rewriteable label; areflector system to direct the light beam along a raster print path; anda controller configured to: receive a label modification input thatincludes an image; process the label modification input to determine abitmap for raster printing the image via the light beam; determine,based on the bitmap, an array of power factors for the light beam thatare configured to modify the rewriteable label with the image; andcontrol, based on the array of power factors, the laser and thereflector system to raster print the image on the rewriteable label.

According to some implementations, a method may include receiving alabel modification input associated with an image; determining, based onthe image, a bitmap for a light beam that is configured to be emitted bya laser of a laser printhead to print the image; determining, based onthe bitmap, a raster print path for the laser printhead to raster printthe image; and controlling the laser printhead to raster print the imageon a rewriteable label according to the raster print path and thebitmap.

According to some implementations, a device may include a memory and aprocessor. In some implementations, the processor is communicativelycoupled to the memory. The processor may be configured to: receive abitmap associated with modifying a rewriteable label; determine, basedon the bitmap, an array of power factors for a light beam that isconfigured to be emitted by a laser of a laser printhead to modify therewriteable label; determine, based on a heat dissipation model and thearray of power factors, a raster print path for the light beam; andcause the laser printhead to emit the light beam to raster print animage, associated with the bitmap, on the rewriteable label according tothe raster print path and the array of power factors.

According to some implementations, a label modification unit may includea laser configured to emit a light beam to modify a rewriteable label;an optic configured to control a spot size of the light beam based on aposition of the optic relative to the laser; a reflector systemconfigured to direct the light beam during raster printing; and acontroller that is configured to: obtain a bitmap associated with amodification to the rewriteable label; determine, based on the bitmapand using a heat dissipation model, temperature profiles for a pluralityof raster print paths of the laser; select, based on the temperatureprofiles and from the plurality of raster print paths, a raster printpath for the modification; and control at least one of the laser, theoptic, and the reflector system to: cause the light beam to follow theraster print path, and emit the light beam according to an array ofpower factors that are associated with the raster print path.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying figures, where like reference numerals refer toidentical or functionally similar elements throughout the separateviews, together with the detailed description below, are incorporated inand form part of the specification, and serve to further illustrateimplementations of concepts that include the claimed invention, andexplain various principles and advantages of those implementations.

FIGS. 1A-1C are diagrams of one or more example implementations forcontrol of a laser printhead for writing or erasing content.

FIG. 2 is a diagram of an example implementation associated with labelmodification, as described herein.

FIG. 3 is a diagram of an example implementation associated withdetermining a print path for label modification, as described herein.

FIGS. 4A and 4B are diagrams of an example implementation associatedwith controlling a light beam for label modification, as describedherein.

FIG. 5 is a diagram of an example implementation associated with labelmodification, as described herein.

FIG. 6 is a diagram of an example implementation of a laser modificationunit described herein.

FIG. 7 is a diagram of an example environment in which systems and/ormethods described herein may be implemented.

FIG. 8 is a diagram of example components of one or more devices of FIG.7.

FIG. 9 is a flowchart of an example process for control of a laserprinthead for erasing and writing content.

FIG. 10 is a flowchart of another example process for control of a laserprinthead for erasing and writing content.

Skilled artisans will appreciate that elements in the figures areillustrated for simplicity and clarity and have not necessarily beendrawn to scale. For example, the dimensions of some of the elements inthe figures may be exaggerated relative to other elements to help toimprove understanding of embodiments of the present invention.

The apparatus and method components have been represented whereappropriate by conventional symbols in the drawings, showing only thosespecific details that are pertinent to understanding the embodiments ofthe present invention so as not to obscure the disclosure with detailsthat will be readily apparent to those of ordinary skill in the arthaving the benefit of the description herein.

DETAILED DESCRIPTION

The following detailed description of example implementations refers tothe accompanying drawings. The same reference numbers in differentdrawings may identify the same or similar elements.

In some instances, a label modification unit may be configured with aset of laser printheads to permit the label modification unit to modifya label (e.g., a rewriteable label). In such cases, the labelmodification unit may include a plurality of laser printheads that areindividually configured to write or erase the content. Morespecifically, one of the plurality of laser printheads may be configuredto write content and another one of the plurality of laser printheadsmay be configured to erase content. In some cases, multiple laserprintheads of the plurality of laser printheads can be included to printcontent to different sizes of areas of the label. However, in somecases, the plurality of laser printheads may be utilized within a mobileand/or navigable device (e.g., an autonomously controlled device) thatis to modify one or more rewriteable labels within an environment.Including the plurality of laser printheads on such a device can addconsiderable weight and/or complexity to the device.

Some implementations described herein provide a label modification unitthat includes a laser printhead with a laser, a variable opticalelement, a reflector system, and a controller that enables the laserprinthead to both write content to or erase content from a rewriteablelabel. In this way, relative to previous label modification units, thelabel modification unit, described herein, can reduce hardware resources(e.g., by reducing hardware associated with a plurality of laserprintheads) and/or improve efficiencies relative to previous labelmodification units (e.g., by reducing a weight and/or size of a devicethat is to utilize the laser printhead).

FIGS. 1A-1C are diagrams of one or more example implementations 100described herein. Example implementation(s) 100 relates to controlling alaser printhead for writing or erasing content. Exampleimplementation(s) 100 includes a label management platform, a labelmodification unit, and a rewriteable label positioned within anenvironment. The rewriteable label may be one of a plurality of labelsin the environment. The environment may be associated with an entity(e.g., an individual or organization) that stores, manages, rents,and/or sells goods or products that are to be identified by therewriteable labels (e.g., according to information received from thelabel management platform).

As shown in FIG. 1A, the label management platform may include one ormore devices that manage label information associated with the labels inthe environment. The information may include label information, such aslocation information that identifies a location of a label, informationassociated with content of a label, information associated withmodifying a label, and/or the like. In some implementations, labelmanagement platform may receive information from and/or transmitinformation to the label modification unit.

The label modification unit may include a raster print controller and alaser printhead. As described herein, the label modification unit may beused to modify (e.g., autonomously and/or semi-autonomously) labels(e.g., the rewriteable label) in a setting with a plurality ofrewriteable labels, such as in a retail store, a warehouse, and/or thelike. For example, the raster print controller, based on informationand/or instructions from the label management platform, may control thelaser printhead to print in accordance with a printing pattern. Forexample, the raster print controller may control the laser printhead toraster print. Raster printing (or rastering), as used herein, may referto the process of printing with pixels in a pixel-by-pixel (e.g., on amaterial), line-by-line, back and forth manner from top to bottom. Asshown in an example raster print illustrated in FIG. 1A, the rasterprint controller may control the laser printhead to print pixels, on afirst line, from left to right. After the laser print head prints thepixels on the first line, the raster print controller may control thelaser printhead to print pixels, on a second line (located below thefirst line), from right to left. After the laser print head prints thepixels on the second line, the raster print controller may control thelaser printhead to print pixels, on a third line (located below thesecond line), from left to right, and so on. Alternatively, the rasterprint controller may control the laser printhead to print pixels, oneach line, from left to right or from right to left.

While certain actions and/or operations are described in connection withexample implementation(s) 100 as being performed by the raster printcontroller, such actions and/or operations may be similarly performedand/or caused to be performed by the label management platform. Theraster print controller may include one or more memories and/orprocessors configured to receive, generate, process, and/or transmitinformation (e.g., controls, instructions, and/or the like) associatedwith modification of the rewriteable label, as described herein. Forexample, as described herein, the raster print controller may be used tooperate components on the label modification unit, such as, for example,one or more components of the laser printhead.

The rewriteable label includes a material that is able to support printand be used to display content. For example, the rewriteable label mayinclude a photothermal material that reacts to different temperatures,such that a light beam (e.g., of a laser printhead) may be used tomonochromatically write and/or erase content to the rewriteable label.Additionally, or alternatively, the rewriteable label may be associatedwith a support or mount structure that is comprised of one or morematerials that may affect the photothermal properties of the rewriteablelabel and/or dissipation of heat from the light beam based oncharacteristics of the emitted light beam (and/or characteristics of thelaser printhead that emits the light beam).

As shown in FIG. 1A, and by reference number 110, the label modificationunit may obtain a label modification input. In some implementations, thelabel modification input may be obtained from the label managementplatform (e.g., via a wireless transmission, a wired transmission, or acombination of wired and wireless transmissions). Alternatively, thelabel modification unit may be preprogrammed with the label modificationinput. For example, the label modification input may be stored in amemory of the label modification unit (e.g., a memory of the rasterprint controller). Alternatively, the label modification input may bereceived from a user device (e.g., a mobile phone, a laptop computer, atablet computer, a desktop computer, a handheld computer, and/or thelike) of a user. The label modification unit may use the labelmodification input to perform label modification.

The label modification input may include information used by the labelmodification unit to determine a label modification associated withmodifying the rewriteable label (e.g., information that indicateswhether to modify the rewriteable label, information associated with howto modify the rewriteable label, and/or the like). For example, thelabel modification input may include information regarding an area ofthe rewriteable label to be modified, content that is currently presenton the rewriteable label, content to be written onto the rewriteablelabel, and/or the like. In some implementations, the label modificationinput may include information that indicates areas of the rewriteablelabel to erase content and/or areas of the rewriteable label to writenew content. As an example, the label modification input may include animage to be printed on the rewriteable label, as shown in FIG. 1A. Inthis regard, the label modification input may include an image file ofthe image. The image may be depicted by one or more pixels.

As shown in FIG. 1A, and by reference number 120, the raster printercontroller may convert the label modification input to a bitmap. Asexample, the label modification input may include an image to be printedon the rewriteable label, as shown in FIG. 1A. In this regard, thebitmap may be generated based on the image. Accordingly, dimensions ofthe bitmap may be the same as dimensions of a pixel array of the image.The bitmap may be used for controlling the laser printhead to rasterprint the image on the rewriteable label. As shown, the bitmap may be arepresentation of the image that uses pixel values for pixels of theimage.

When converting the label modification input, the raster printcontroller may analyze the label modification input to identifyinformation regarding content to be written onto the rewriteable label,content to be erased from the rewriteable label, and/or content toremain unmodified on the rewriteable label. For example, the rasterprint controller may analyze pixels of the image and assign bit valuesbased on analyzing the image. For instance, the raster print controller(e.g., based on an image filtering technique and/or using an imagefilter) may assign a bit value for the content to be written onto therewriteable label (e.g., a pixel, of the image, to be written on to therewriteable label). The raster print controller may determine and assignanother bit value for the content to be erased from the rewriteablelabel (e.g., a pixel, of the image, representing a blank space) orcontent to remain unmodified on the rewriteable label.

The raster print controller may generate the bitmap including theassigned bits. For example, each bit in the bitmap that is set to one(1) may represent a pixel (e.g., a content element to be written ontothe rewriteable label), and each bit in the bitmap that is set to zero(0) represent no pixel (e.g., a content element to be removed from therewriteable label or a content element to remain unmodified on therewriteable label). In this regard, the bitmap may be a binary bitmap.For example, the bitmap may be a binary text file (e.g., a text filewith bits having a value of one (1) or zero (0)). In such a case, theones may correspond to black content and the zeros may correspond towhite content (or no content). A portion of the bitmap that may begenerated, by the raster print controller and using the image, isillustrated in FIG. 1A. According to some implementations, the bitmapmay include pixel values that are based on ranges of a particular colorscheme (e.g., grayscale, color, and/or the like). For example, agrayscale image may be converted to a bitmap of pixel values that rangefrom 0 to 4, where zero is white (or no content) content, one (1) is alighter gray, two (2) is an intermediate gray, three (3) is darker gray,and four (4) is black.

As shown in FIG. 1B, and by reference number 130, the raster printcontroller may determine an array of power factors for raster printingto modify the rewriteable label. The array of power factors may bedetermined based on the bitmap. For example, the raster print controllermay analyze the bits, of the bitmap, to determine the array of powerfactors. The bitmap may correspond to an array of pixels (or a pixelarray) of the image when the image is depicted on the rewriteable label.In this regard, as shown in FIG. 1B, dimensions (e.g., a quantity ofcolumns and rows or lines) of the array of power factors may be the sameas dimensions of the array of pixels of the image. The raster printcontroller may use the array of power factors to control a power levelof the light beam emitted by the laser printhead of the lasermodification unit. In this regard, the array of power factors mayinclude an array of power levels (e.g., or intensities) for the laser,an array of spot sizes for the light beam (e.g., a dimension or diameterof the light beam), an array of dwell times (e.g., a duration that thelight beam is to be focused on or over the pixels of the array ofpixels), or a combination of the array of power levels, the array ofspot sizes, and/or the array of dwell times.

The raster print controller may determine a power level of the laser (asa power factor) for each bit of the bitmap (e.g., based on a bit valueof each bit) and may generate the array of power levels (and/or otherpower factors) based on determining the power levels of the light beamfor all bits of the bitmap. For example, as shown in FIG. 1B, if a bitvalue of a bit is zero (0), then the raster print controller may assigna power level of zero (0) for that bit (or assign a value of zero (0)for the power level associated with that bit). The power level of zeromay correspond to a power level that includes no pixel (or whitecontent). If the bit value is one (1), then the raster print controllermay determine the power level based on bit values of pairs of adjacentbits in the bitmap. For example, the raster print controller mayidentify, adjacent pairs of bits that are along a raster print path anddetermine the power level of a first bit relative to whether a secondbit, that is adjacent bit to the first bit, is to include content (e.g.,is a one (1)) or is not to include content (e.g., relative to whetherthe second bit is a zero (0)). In such a case, the raster printcontroller may account for the temperature of a location of therewriteable label that corresponds to the adjacent bit being relativelycool (the laser is not to write content to or erase content from thelocation) or relatively warm (the laser is to write to or erase contentfrom the location).

Accordingly, the raster print controller may compare the value of afirst bit of the bitmap and the value of a second bit of the bitmap thatis adjacent to the first bit. For instance, the first bit may be on aparticular line (and on a particular column) and the second bit may beon another line immediately below the particular line (and on thatparticular column of the bitmap). As shown in FIG. 1B, if the bit valueof the first bit is one (1) and the bit value of the second bit is one(1), then the raster print controller may assign a power level of two(2) or higher for the first bit (or assign a value of two (2) or higherfor the power level associated with the first bit). As shown in FIG. 1B,if the bit value of the first bit is one (1) and the bit value of thesecond bit is zero (0), then the raster print controller may assign apower level of one (1) for the first bit (or assign a value of one (1)for the power level associated with the first bit). A power level of one(1) may be assigned to account for heat dissipation associated with apower level of two (2) or higher, as will be explained below. Accordingto some implementations, the power level may be increased to a maximumpower level (e.g., two (2) in example implementation 100) to writecontent for one or more bits immediately following, along a raster path,a location of the rewriteable label that is not going to be written orerased (e.g., to heat the locations of the one or more bits morequickly) and/or to write content for one or more edge bits of the imagethat are adjacent locations of the rewriteable label that are not to bewritten with content (e.g., a margin or edge of the rewriteable label).

A power level may be representative of an amount of heat that the lightbeam is to provide to the rewriteable label at a location of therewriteable label that corresponds to the bit of the bitmap. As shown inFIG. 1B, for example, a power level of two (2) or higher may correspondto an amount of heat that the light beam is to provide to form (orgenerate) content on the rewriteable content (e.g., a pixel). A powerlevel of one (1) may correspond to an amount of heat that the light beamis to provide to form (or generate) content on the rewriteable content(e.g., a pixel). The amount of heat (for the power level of one (1)) maybe less than the amount of heat (for the power level of two (2)) toaccount for heat dissipation, as described below. A power level of zero(0) may correspond to an amount of heat that the light beam is toprovide to erase content from the rewriteable content (e.g., no pixel).In this regard, the array of power factors may be a non-binary bitmap(e.g., a non-binary text file) that corresponds to the bitmap. The powerlevel of zero (0) may be less than the power level of one (1) and thepower level of one (1) may be less than the power level of two (2) orhigher. The values of the power levels discussed above are providedmerely as examples. Other examples may differ from what is describedwith regard to the values above.

The power level of one (1) may serve as a transition amount of heat toaccount for heat dissipation that may occur between an area of therewriteable label that may be subjected to the power level of zero (0)(which may be associated with not modifying content, or erasing content)and an area of the rewriteable label that may be subjected to the powerlevel two (2) or higher. For example, consider three adjacent bits in acolumn of the portion of the bitmap shown in FIG. 1B. As shown in FIG.1B, a first bit (on a first line) has a bit value of one (1), a secondbit (on a second line immediately below the first line) has a bit valueof one (1), and a third bit (on a third line immediately below thesecond line) has a bit value of zero (0). In this regard, assigning apower level of two (2) or higher to the first bit and the second bit(based on the bit value of one (1)) and assigning a power level of zero(0) to the third bit may cause heat (or excess heat), from the locationson the rewriteable label subjected to the power level of two (2), totransfer to the location on the rewriteable label that is to besubjected to an amount of heat corresponding to the power level of zero(0). For example, the heat may transfer if the light beam is to beemitted at the power level of zero (0) within a relatively short ofperiod of time after the light beam was emitted at the power level oftwo (2).

Due to the transfer of heat, that location on the rewriteable labelwould be subjected to an amount of heat that exceeds the amount of heatassociated with the power level of zero (0). Accordingly, the heatdissipation may cause a degradation in the resolution of the contentprinted on the rewriteable label, as shown in FIG. 2, for example. Morespecifically, the heat dissipation between an area, on the rewriteablelabel, associated with a bit value of two (2) (e.g., pixel) and an area,on the rewriteable label, associated with a bit value of zero (0) (e.g.,no pixel) may cause a degradation in resolution of the correspondingcontent. In this regard, the raster print controller may assign a powerlevel of one (1) based on analyzing bit values of adjacent bits, asexplained above, to prevent (or reduce) heat dissipation on therewriteable label and, therefore, improve the resolution of the contentprinted on the rewriteable label, as shown in FIG. 2. Referring back toFIG. 1B, the raster print controller may therefore assign a power levelof one (1) to the second bit to prevent heat dissipation on therewriteable label. The power level of one (1) may be used to achieve aconstant localized heating in desired areas of the rewriteable label.

As discussed above, a power level may be representative of an amount ofheat that the light beam is to provide to the rewriteable label at alocation of the rewriteable label that corresponds to the bit of thebitmap (e.g., to write content or to erase content). In this regard, theraster print controller may determine a power level based on atemperature profile for writing content to or erasing content from anarea of the rewriteable label. For example, the raster print controllermay be configured with one or more temperature profiles to write to therewriteable label (and/or any other rewriteable label in the environmentof the label modification system) or erase content from the rewriteablelabel. In some implementations, an area of the rewriteable label ofexample implementation(s) 100 can be written to when the area reaches arelatively high temperature (e.g., greater than 170 degrees Celsius (°C.)) and is cooled at a corresponding write rate, while content from thearea can be erased when the area reaches a relatively low temperature(e.g., approximately 150° C. to approximately 170° C.) and is cooled ata corresponding erase rate. In some implementations, cooling an arearelatively quickly may cause content to be written (e.g.,monochromatically), whereas cooling an area relatively slowly may allowcontent to be erased from the rewriteable label.

For example, a power level of zero (0) may correspond to temperaturesranging from approximately 150° C. to approximately 170° C. A powerlevel of one (1) may correspond to temperatures ranging fromapproximately 171° C. to a threshold temperature (e.g., exceedingapproximately 171° C.) that prevents heat dissipation. A power level oftwo (2) or higher may correspond to temperatures exceeding the thresholdtemperature. Accordingly, the raster print controller may maintain oneor more temperature profiles that identify specifications for modifying(e.g., writing content to or erasing content from) a particularrewriteable label. As an example, the raster print controller maydetermine the one or more temperature profiles based on informationregarding a thermal sensitivity of the particular rewriteable label. Theinformation regarding the thermal sensitivity may be obtained from thelabel management platform, may be preprogrammed in a memory of theraster print controller, may be determined based on informationidentifying the label, and/or the like. The specifications may include adesired write temperature and/or write cooling rate for writing with aparticular spot size and/or to an area having a particular size.Similarly, the temperature profile may include a desired erasetemperature and/or erase cooling rate for erasing with a particular spotsize and/or from an area having a particular size.

As discussed above, the array of power factors may include an array ofspot sizes for the light beam. In this regard, the raster printcontroller may determine a spot size of the light beam based on a sizeof an area of the rewriteable label that is to be modified, one or moredimensions (e.g., a length and/or a width) of one or more portions(e.g., lines, characters, shapes, and/or the like) of the content thatis to be written to the rewriteable label or erased from the rewriteablelabel, and/or the like. In such cases, the raster print controller mayanalyze a quantity of pixels associated with the area and/or the contentthat is to be modified, and determine the size of the area and/ordimensions of the content based on the quantity of pixels (and/or layoutof the pixels). In some implementations, the raster print controller maydetermine the spot size based on a range of power levels of a light beamthat can be emitted the laser (e.g., according to a range of availablepower being supplied to the laser) and/or the ability of an opticalsystem associated with the laser printhead to vary the spot size of thelight beam. The optical system is described below. In some instances,adjusting a focus of a variable optical element of the labelmodification unit may alter a spot size, a shape, and/or the like of alight beam. For example, the raster print controller may be configuredwith one or more temperature profiles to write to the rewriteable label(and/or any other rewriteable label in the environment of the labelmodification system) or erase content from the rewriteable label.

In some examples, the raster print controller may compare the bitmapgenerated based on the content of the label modification input and abitmap generated for content already on the rewriteable label and maygenerate an array of power factors based on a result of the comparison.The bitmap generated for the content already on the rewriteable labelmay be obtained from a label management platform, a memory of the rasterprint controller, a user device (as described herein), and/or the like.As an example, the raster print controller may determine differencesbetween the bitmap generated based on the content of the labelmodification input and the bitmap generated for the content already onthe rewriteable label based on a result of the comparison and generate adifference bitmap based on the differences. For instance, if a bit (ofthe bitmap generated based on the content of the label modificationunit) is same as a corresponding bit (of the bitmap generated for thecontent already on the rewriteable label), then a corresponding bit ofthe difference bitmap may be a zero (0) to indicate no change. Theraster print controller may use the difference bitmap to generate thearray of power factors. Using the difference bitmap to generate thearray of power factors may conserve printhead resources byconcentrating/focusing the modifications to just the changes that needto be made to the content that already exists on the rewriteable label.

As shown in FIG. 1C, and by reference number 140, the raster printcontroller may control the laser printhead to raster print according tothe array of power factors. For example, the raster print controller mayanalyze the array of power factors and cause the laser to emit, for eachbit of the array of power factors, a light beam at a corresponding powerlevel to write content to (e.g., write pixels to) or erase content from(e.g., erase pixels from) the rewriteable label (e.g., to depict animage). As shown in FIG. 1C, the raster print controller may cause thelaser printhead to raster print in accordance with a raster print path.For example, the raster print controller may control the light beam tofollow, using a reflector system of the laser printhead, a raster printpath defined by the array of power factors. For example, the rasterprint path may be based on a raster printing configuration of the arrayof power factors. The raster print configuration may correspond to a rowand column configuration of the array of power factors. The raster printconfiguration for printing a portion of the content of the labelmodification input is illustrated in FIG. 1C.

According to some implementations, a raster print path may bepreconfigured for the laser printhead. In such a case, the laserprinthead modifies the rewriteable label in a preconfiguredpixel-by-pixel order, line-by-line order, and/or the like. Accordingly,the laser printhead may direct the light beam along a raster print pathalong one or more lines in a particular direction (e.g., a horizontaldirection, a vertical direction, a diagonal direction, and/or the like),to or between the one or more lines in a particular order (e.g.,left-to-right, right-to-left, alternating left-to-right andright-to-left, top-to-bottom, bottom-to-top, alternating top-to-bottomand bottom-to-top, and/or the like). In some implementations, the rasterpath can be selected from a plurality of preconfigured raster paths(e.g., based on a configuration or characteristic of the image and/orbitmap). In this way, an order of pixels (corresponding to the bits ofthe bitmap) can determined from the raster path and corresponding powerfactors can be determined for an array of power factors that arespecifically configured for modifying the rewriteable label using theselected preconfigured raster path.

As shown in FIG. 1C, based on the raster print path, the raster printcontroller may cause the laser printhead to emit, for each bit of afirst row of the array of power factors, a light beam at a correspondingpower level to print pixels from left to right. After the first row, theraster print controller may cause the laser printhead to emit, for eachbit of a second row (immediately below the first row) of the array ofpower factors, a light beam at a corresponding power level from right toleft. After the second row, the raster print controller may cause thelaser printhead to emit, for each bit of a third row (immediately belowthe second row) of the array of power factors, a light beam at acorresponding power level from left to right, and so on.

In some implementations, the raster print controller may combinecoordinates of the raster print path with corresponding power factors,of the array of power factors, to generate a raster print array. Forexample, for each content element (e.g., pixel) to be printed, theraster printer controller may determine coordinates of the content(associated with the raster print path), a power level (based on thearray of power factors) of the light beam emitted for printing thecontent, and a focus/spot size (based on the array of power factors) ofthe light beam emitted for printing the content. For instance, eachcontent element may be represented by raster print array information inthe format (X, Y, P, F), where X and Y represent two dimensional (2D)coordinates, P represents the power level of the light beam, and Frepresents the focus/spot size. The raster print array information maybe included in the raster print array.

The raster print controller may control the laser printhead to rasterprint according to the raster print array. For example, the raster printcontroller may cause the laser printhead to raster print based on powerlevel and/or based on focus/spot size. For instance, the raster printcontroller may cause the laser printhead to print or raster print eachpixel associated with a first power level (e.g., power level of two(2)), followed by each pixel associated with a first power level (e.g.,power level of one (1)), followed each pixel associated with a firstpower level (e.g., power level of zero (0)), and so on. Similarly, foreach pixel associated with a same power level, the raster printcontroller may cause the laser printhead to print or raster print eachpixel associated with a first focus/spot size, followed by each pixelassociated with a second focus/spot size, followed by each pixelassociated with a third focus/spot size, and so on. Accordingly, theraster print controller may cause the laser printhead to print or rasterprint the pixels based on an order of power levels, an order offocus/spot sizes, or a combination. Causing the laser printhead to printbased on power level and/or based on focus/spot size may preserveresources and reduce an amount of time that would have been used toadjust a power level and/or a spot size of the light beam emitted by thelaser printhead on potentially a pixel-by-pixel basis. Additionally,causing the laser printhead to print based on power level may reduce orprevent heat dissipation. The printing sequences discussed above areprovided merely as examples. Other examples may differ from what isdescribed with regard to the printing sequences.

The number and arrangement of devices and components shown in FIGS.1A-1C are provided as one or more examples. In practice, there may beadditional devices and/or components, fewer devices and/or components,different devices and/or components, or differently arranged devicesand/or components than those shown in FIGS. 1A-1C. Furthermore, two ormore devices or components shown in FIGS. 1A-1C may be implementedwithin a single device or component, or a single device or componentshown in FIGS. 1A-1C may be implemented as multiple, distributed devicesor components. Additionally, or alternatively, a set of devices orcomponents shown in FIGS. 1A-1C may perform one or more functionsdescribed as being performed by another set of devices or componentsshown in FIGS. 1A-1C.

FIG. 2 is a diagram of an example implementation 200 associated withlabel modification of a rewriteable label, as described herein. Exampleimplementation 200 illustrates a bitmap converted from content of alabel modification input. For example, the content may include an image.The content may be converted to a bitmap in a manner similar to themanner described with respect to FIG. 1A. The bitmap may be analyzed andused by the raster print controller to cause the laser printhead towrite the content (in this case, an image) on the rewriteable label. Asshown in FIG. 2, the resolution of the image printed on the rewriteablelabel may be degraded due to the heat dissipation discussed above withrespect to FIG. 1B. In this regard, and referring back to FIG. 2, thebitmap does not account for the heat dissipation that may occur on therewriteable label. Accordingly, the degraded resolution may occur whenthe raster print controller causes the laser printhead to write contentto and/or remove content from the rewriteable label using a bitmap thatdoes not account for the heat dissipation that may occur on therewriteable label.

Example implementation 200 illustrates an array of power factors. Theraster print controller may generate the array of power factors based onthe bitmap in a manner similar to the manner described above withrespect to FIG. 1B. The array of power factors may be analyzed and usedby the raster print controller to cause the laser printhead to write thecontent on the rewriteable label, in a manner similar to the mannerdescribed above with respect to FIGS. 1B and 1C. As shown in FIG. 2, theresolution of the image printed on the rewriteable label may be improveddue to the array of power factors taking into account the heatdissipation. In this regard, the array of power factors includes a bit(described above) representing a power level (of the light beam emittedby the laser printhead) that prevents (or reduces) the heat dissipation.

As indicated above, FIG. 2 is provided merely as an example. Otherexamples may differ from what is described with regard to FIG. 2.

FIG. 3 is a diagram of an example implementation 300 associated withdetermining a print path for label modification, as described herein.Example implementation 100 includes a label management platform (e.g.,described in connection with FIGS. 1A-1C), a label modification unitthat include a raster print controller and a laser printhead (e.g.,described in connection with FIGS. 1A-1C), and a rewriteable label(e.g., described in connection with FIGS. 1A-1C). As shown in FIG. 3,the raster print controller may determine a raster print path for alaser printhead to raster print the content (e.g., an image) on therewriteable label, based on a bitmap (e.g., described in connection withFIGS. 1A and 1B) and a temperature profile (of the raster print path)generated using a temperature model. The raster print path maycorrespond to an optimal laser print path for printing the content onthe rewriteable label. For example, the optimal laser print path may bea print path that causes the least amount of heat dissipation out of aplurality of paths for printing the content on the rewriteable label.

The raster print controller may generate the temperature profile usingthe temperature model. The temperature model may include a modelimplemented using one or more memories and/or processors associated withthe raster print controller. The temperature model may include a powerfactor density analyzer, a power-based raster path identifier, and araster path selector. The factor density analyzer may be used to analyzethe array of factors to identify levels of heat for different locationson the rewriteable label. The power-based raster path identifier may beused to determine temperature profiles associated with different printpaths. The raster path selector may be used to select a print path(e.g., an optimal print path). The raster print controller may use thetemperature model to determine a temperature profile that may be used toselect an optimal laser print (described above).

For example, the raster print controller may analyze, using the powerfactor density analyzer, the bitmap to identify a plurality of rasterprint paths for raster printing the content on the rewriteable label.For each raster print path, the raster print control may determine atemperature profile. As explained above, the temperature profile maycorrespond to an expected temperature of a pixel location of therewriteable label when the laser printhead reaches that pixel locationalong the raster print path. The raster print controller may identifypixel locations (along the raster print path) of the rewriteable labelthat are to receive a threshold level of heat to write content to orerase content from the pixel locations to depict the image. Each pixellocation may correspond to a pixel location of the image (e.g., alocation of a pixel on the image). The threshold level of heat for thepixel locations along the raster print path may be used to determine thetemperature profile. In some examples, the raster print controller mayanalyze the temperature profile in accordance with the bit value of eachbit of the bitmap. As explained above, each bit value may correspond toa power level of the light beam emitted by the laser printhead.Accordingly, the raster print controller may determine, based on thetemperature profile, an array of power factors (e.g., described inconnection with FIGS. 1B and 1C) that are associated with controllingthe laser printhead to print the content.

In this regard, for each bit of the array of power factors, the rasterprint controller may determine an amount of heat (corresponding to thebit value) that the light beam is to provide to the rewriteable label ata corresponding location (e.g., pixel location) of the raster print pathand, therefore, may determine the threshold level of heat for thatlocation (e.g., pixel location). In this regard, the raster printcontroller may identify write pixel locations or pixel locations of therewriteable label that are to receive a threshold amount of heat (orwrite threshold amount of heat) to write pixels to the pixel locations.Additionally, the raster print controller may identify erase pixellocations or pixel locations of the rewriteable label that are toreceive a threshold amount of heat (or an erase threshold amount ofheat) to erase pixels from the pixel locations.

The raster print controller may determine, using the power-based rasterpath identifier and based on the pixel locations, a plurality oftemperature profiles associated with a plurality of raster print pathsfor writing the content to the rewriteable label. For example, theraster print controller may determine a temperature profile for rasterprinting the write pixel locations associated with a first power levelof the light beam emitted by the laser printhead, a temperature profilefor raster printing the write pixel locations associated with a secondpower level of the light beam, and so on. Additionally, oralternatively, the raster print controller may determine a temperatureprofile for raster printing a first density (or concentration) of writepixel locations associated with a particular power level of the lightbeam emitted by the laser printhead, a temperature profile for rasterprinting a second density (or concentration) of write pixel locationsassociated with the particular power level of the light beam emitted bythe laser printhead, and so on. Additionally, or alternatively, theraster print controller may determine a temperature profile based on adistance between a pair of write pixel locations, a temperature profilebased on a pair of erase pixel locations, and/or a temperature profilebased on a write pixel location and an erase pixel location.

The determination of temperature profiles discussed above are providedmerely as examples. Other examples may differ from what is describedwith regard to the determination of temperature profiles above. Thetemperature profile may be based on a temperature (or an amount of heatgenerated by the light beam at the power level) associated with writingthe pixel on the rewriteable label and a rate at which the rewriteablelabel is cooled at the corresponding pixel location.

According to some implementations, an optimal raster path can bedetermined for raster printing an image. For example, the controller mayanalyze a bitmap, determine a plurality of raster paths based on thebitmap (e.g., via a plurality of iterative analyses of the bitmap),select an optimal raster path from the determined plurality of rasterpaths, and control the laser printhead to modify pixel locations of thelabel in a sequence that corresponds to the raster path. In other words,a raster print path can be determined, as described herein, that is notpreconfigured or fixed to go in a particular pixel-by-pixel orline-by-line order, as described above.

In some implementations, the controller, when using an optimal rasterprint path to raster print an image can control the light beam to moveto a subset of the total pixel locations of the rewriteable label (e.g.,unless all of the pixel locations of the rewriteable label are to bemodified for a particular image). For example, if a particular pixel (ora particular cluster of pixels) is not to be written or erased from therewriteable label, the controller may determine and/or select an optimalraster print path that does not include pixel locations corresponding tothe pixels. In this way, rather than directing the laser printhead toraster over all pixel locations when raster printing an image, thecontroller can reduce a time (and correspondingly increase a speed)associated with modifying the rewriteable label.

The raster print controller may select, using the raster path selectorof the temperature model, the raster print path, from a plurality ofraster print paths associated with the plurality of temperatureprofiles, that causes a least amount of heat dissipation in therewriteable label when writing the content (out of the amounts of heatdissipation that may be caused by the plurality of raster print paths).For example, the selected raster print path may correspond to a shortestraster print path through the pixel locations to write the content outof the plurality of raster paths identified by the raster printcontroller. The selected raster print path may correspond to a rasterprint path associated with a least amount of adjustment to the powerlevel of the light beam and/or to the focus/spot size of the light beam.

The raster path may be selected and configured to optimize a performancecharacteristic of the laser printhead. As an example, the performancecharacteristic may include a shortest raster path between the pixellocations, a fastest time for writing the content, a minimum temperaturevariation for writing the content, and/or a quality associated withwriting the content.

The number and arrangement of devices and components shown in FIG. 3 areprovided as one or more examples. In practice, there may be additionaldevices and/or components, fewer devices and/or components, differentdevices and/or components, or differently arranged devices and/orcomponents than those shown in FIG. 3. Furthermore, two or more devicesor components shown in FIG. 3 may be implemented within a single deviceor component, or a single device or component shown in FIG. 3 may beimplemented as multiple, distributed devices or components.Additionally, or alternatively, a set of devices or components shown inFIG. 3 may perform one or more functions described as being performed byanother set of devices or components shown in FIG. 3. FIGS. 4A and 4Bare diagrams of an example implementation 400 associated withcontrolling a light beam for label modification, as described herein.Example implementation 400 illustrates a raster print controller (e.g.,described in connection with FIGS. 1A-1C) adjusting a light beam of alaser printhead (and/or a laser) for a label modification of arewriteable label (e.g., described in connection with FIGS. 1A-1C). Thelabel modification may include a write operation and an erase operation.More specifically, as described below, the raster print controller maycontrol the laser printhead to modify the rewriteable label to displayan image. The label modification unit (e.g., the raster print controllerand the laser printhead) may perform the label modification of exampleimplementation 400 based on receiving and processing a labelmodification input (e.g., described in connection with FIGS. 1A-1C),selecting a raster print path that reduces (or prevents) heatdissipation, and printing the content (e.g., the image) on therewriteable label (e.g., described in connection with FIG. 3).

In this regard, with respect to FIGS. 4A and 4B, assume that the rasterprint controller has selected a raster print path with a lowest heatdissipation profile of heat dissipation profiles associated with aplurality of raster print paths for printing the image. The raster printpath may correspond to a raster print path associated with the leastamount of adjustments to the laser printhead out of the amount ofadjustments associated the plurality raster print paths.

As shown in FIG. 4A, and by reference number 410, the raster printcontroller may cause the laser printhead to raster print content using apower level of two (2) of the laser printhead. For example, the rasterprint controller may cause the laser printhead to raster print thebackground surrounding the stars depicted in the image.

As shown in FIG. 4A, and by reference number 420, the raster printcontroller may cause the laser printhead to raster print content using apower level of one (1) of the laser printhead. For example, the rasterprint controller may cause the laser printhead to raster print anoutline of the stars depicted in the image. In this regard, the rasterprint controller may cause the laser printhead to adjust the power levelto a power level of one (1) and to reduce to the spot size for theoutline.

As shown in FIG. 4A, and by reference number 430, the raster printcontroller may cause the laser printhead to raster print content using apower level of two (2) of the laser printhead. For example, the rasterprint controller may cause the laser printhead to raster print a shortstripe of the image. In this regard, the raster print controller maycause the laser printhead to adjust the power level to a power level oftwo (2) and increase the spot size for printing the stripe.

As shown in FIG. 4A, and by reference number 440, the raster printcontroller may cause the laser printhead to raster print content using apower level of one (1) of the laser printhead. For example, the rasterprint controller may cause the laser printhead to raster print anoutline of the short stripe depicted in the image. In this regard, theraster print controller may cause the laser printhead to adjust thepower level to a power level of one (1).

As shown in FIG. 4B, the process described in connection with referencenumbers 430 and 440 may be repeated until all the short stripes areprinted. As shown in FIG. 4A, and by reference number 450, the rasterprint controller may cause the laser printhead to raster print a longstripe depicted in the image, in a manner similar to the mannerdescribed in connection with reference number 430. As shown in FIG. 4A,and by reference number 460, the raster print controller may cause thelaser printhead to raster print an outline of the long stripe, in amanner similar to the manner described in connection with referencenumber 440.

As shown in FIG. 4B, the process described in connection with referencenumbers 450 and 460 may be repeated until all the long stripes areprinted. In regard, as shown in FIG. 4B, and by reference number 470,the raster print controller may cause the laser printhead to rasterprint the last long stripe depicted in the image, in a manner similar tothe manner described in connection with reference number 430. In thiscase, a resolution of the last long stripes may be degraded (e.g., theremay be some anomalies associated with the last long stripe). Forexample, the anomalies may be caused by heat dissipation.

As shown in FIG. 4B, and by reference number 480, the raster printcontroller may cause the laser printhead to erase content using a powerlevel of zero (0) of the laser printhead. For example, the raster printcontroller may cause the laser printhead to raster print to remove anycontent that may appear on the rewriteable label due to heatdissipation. For instance, to erase the content, the raster printcontroller may cause the laser printhead to adjust the power level to apower level of zero (0) and adjust the spot size. Additionally, oralternatively, the raster print controller may control dwell time and/ora movement rate of the light beam of the laser printhead to erase thecontent (e.g., the anomalies).

The raster print sequence discussed above is provided merely as anexample. Other examples may differ from what is described with regard tothe raster print sequence above. For example, the raster printcontroller may control the laser printhead to raster print all contentwith a power level of two (2), then raster print all content with apower level of one (1), and then raster print all content with a powerlevel of zero (0).

The number and arrangement of devices and components shown in FIGS. 4Aand 4B are provided as one or more examples. In practice, there may beadditional devices and/or components, fewer devices and/or components,different devices and/or components, or differently arranged devicesand/or components than those shown in FIGS. 4A and 4B. Furthermore, twoor more devices or components shown in FIGS. 4A and 4B may beimplemented within a single device or component, or a single device orcomponent shown in FIGS. 4A and 4B may be implemented as multiple,distributed devices or components. Additionally, or alternatively, a setof devices or components shown in FIGS. 4A and 4B may perform one ormore functions described as being performed by another set of devices orcomponents shown in FIGS. 4A and 4B.

FIG. 5 is a diagram of an example implementation 500 associated withlabel modification of a rewriteable label, as described herein. Exampleimplementation 500 illustrates the process of a raster print controller(e.g., described in connection with FIGS. 1A-1C) causing a labelmodification of a rewriteable label (e.g., described in connection withFIGS. 1A-1C) based on a label modification input. The label modificationmay include a write operation and an erase operation. As explainedabove, the label modification input may be obtained from a labelmanagement platform, a user device, a memory of the raster printcontroller, and/or the like.

As shown in FIG. 5, the current content of the rewriteable label is theletter “B.” As shown in FIG. 5, the content of the label modificationinput is the number “8.” In this regard, the raster print controller isto modify the content of the rewriteable label from the letter “B” tothe number “8” based on the label modification input. Accordingly, asshown in FIG. 5 and by reference number 510, the raster print controlmay determine bitmaps and/or arrays of power factors based on thecontent of the rewriteable label and the content of the labelmodification input. For example, the raster print controller may obtainthe content of the rewriteable label from the label management platform,a user device, a memory of the raster print controller, and/or the like.The raster print controller may convert the content of the rewritablelabel into a bitmap and generate an array of power factors based on thebitmap in a manner similar to the manner described above in connectionwith FIGS. 1A-1C. Alternatively, the raster print controller may obtainthe array of power factors from the label management platform, a memoryof the raster print controller, and/or the like.

The raster print controller may convert the content of the labelmodification input into a bitmap and generate an array of power factorsbased on the bitmap in a manner similar to the manner described above inconnection with FIGS. 1A-1C. The bitmap of the content of the labelmodification input may be different than the bitmap of the content ofthe rewriteable label. Similarly, the array of power factors of for thelabel modification input may be different than the array of powerfactors for the rewriteable label.

As shown in FIG. 5, and by reference number 520, the raster printcontroller may compare the array of power factors for the labelmodification and the array of power factors for the rewriteable label.Based on a result of the comparison, the raster print controller mayidentify differences in the array of power factors for the labelmodification input with respect to the array of power factors for therewriteable label. As shown in FIG. 5, the raster print controller mayidentify, based on a result of the comparison, the content elements(e.g., pixels) that need to be written to and/or erased from therewriteable label to modify the content of the rewriteable label. Asshown in FIG. 5, the raster print controller may also determine thecorresponding power levels (of the light beam) to cause the contentelements to be written to and erased from the rewriteable label with theleast amount of heat dissipation. The raster print controller may thenselect a raster print path for raster printing the content elements inmanner similar to the manner described above with respect to FIG. 3.

As indicated above, FIG. 5 is provided merely as an example. Otherexamples may differ from what is described with regard to FIG. 5.

FIG. 6 is a diagram of an example implementation of a label modificationunit 600 described herein. The label modification unit 600 may be thelabel modification unit of the example implementations described herein.As shown in FIG. 6, the label modification unit includes a laser 610that includes has a light emitter 612 and a collimator 614, an opticalsystem 620 that includes a variable optical element 622, and a reflectorsystem 630 that includes one or more reflectors 632. FIG. 6 furtherillustrates an optical path of a light beam formed from light beingemitted by the laser 610, adjusted or focused by the optical system 620,and directed by the reflector system 630 to modify a rewriteable label640 (e.g., corresponding to the rewriteable label of exampleimplementations described herein).

The light emitter 612 may generate light that can be focused by thecollimator 614 into a light beam that has a particular power (e.g., thatmay be based on supplied power and/or an optical configuration of thecollimator 614). The collimator 614 may include a fixed lens (e.g., anF-theta lens) to focus the light beam according to one or more desiredattributes (e.g., so that a consistent light beam is provided to theoptical system 620). Accordingly, the laser 610 may output a light beamto the optical system 620, which may uses the variable optical element622 to focus the light beam to have a particular spot size. As shown,the variable optical element 622 may perform a spot size adjustmentbased on movement of the variable optical element 622 relative to thelaser 610 and/or adjusting a shape and/or configuration of the variableoptical element 622. Accordingly, the variable optical element 622 caninclude any suitable reconfigurable optical element that can adjust afocus of the light beam (e.g., rotatable lenses, liquid lenses, and/orthe like).

The reflector system 630 may include one or more reflectors 632(referred to collectively as “reflectors 632” and individually as“reflector 632”) to redirect the light beam emitted by the laser. Thereflector 632 may include an actuatable and/or adjustable mirror, areflective material, and/or the like that may be used to reflect and/ordirect the light beam toward a particular direction. The reflectors 632may be controlled to move as a function of time or another variable.

As shown in FIG. 6, light is emitted, during a write operation or eraseoperation, from the light emitter 612 and focused into a light beam bythe collimator 614. The light beam is to pass through the variableoptical element 622, which may adjust (e.g., according to a position orshape) to vary a spot size, focus, and/or power density of the lightbeam. The light beam is to further pass through one or more reflectors632 to be directed onto a particular area or position of the rewriteablelabel 640 to modify content of the rewriteable label. In this way, thelaser 610 can be controlled to sweep light beams with various attributesover areas of the rewriteable label 640 to correspondingly write contentor erase content.

As indicated above, FIG. 6 is provided merely as an example. Otherexamples may differ from what is described with regard to FIG. 6.

FIG. 7 is a diagram of an example environment 700 in which systemsand/or methods, described herein, may be implemented. As shown in FIG.7, environment 700 may include a label management platform 710 (e.g.,the label management platform of example implementation 100) that ishosted by computing resources 715 of a cloud computing environment 720,a label modification system 730 (e.g., the label modification system ofexample implementation 100) with a raster print controller 732 (e.g.,corresponding to the raster print controller of example implementation100), and a network 740. Devices of the environment 700 may interconnectvia wired connections, wireless connections, or a combination of wiredand wireless connections.

The label management platform 710 includes one or more devices thatmanage information associated with labelling one or more rewriteablelabels of an environment, as described herein. In some implementations,the label management platform 710 may be designed to be modular suchthat certain software components may be swapped in or out depending on aparticular need. As such, the label management platform 710 may beeasily and/or quickly reconfigured for different uses. The labelmanagement platform 710 may receive information from and/or transmitinformation to label modification unit 730 (and/or the raster printcontroller 732), as described herein.

In some implementations, as shown, the label management platform 710 maybe hosted in the cloud computing environment 720. Notably, whileimplementations described herein describe the label management platform710 as being hosted in the cloud computing environment 720, in someimplementations, the label management platform 710 may not becloud-based (i.e., may be implemented outside of a cloud computingenvironment) or may be partially cloud-based.

The cloud computing environment 720 includes an environment that hoststhe label management platform 710. The cloud computing environment 720may provide computation, software, data access, storage, etc., servicesthat do not require end-user knowledge of a physical location andconfiguration of system(s) and/or device(s) that hosts the labelmanagement platform 710. As shown, the cloud computing environment 720may include a group of the computing resources 715 (referred tocollectively as “computing resources 715” and individually as “computingresource 715”).

The computing resource 715 includes one or more personal computers,workstation computers, mainframe devices, or other types of computationand/or communication devices. In some implementations, the computingresource 715 may host the label management platform 710. The cloudresources may include compute instances executing in the computingresource 715, storage devices provided in the computing resource 715,data transfer devices provided by the computing resource 715, etc. Insome implementations, a computing resource 715 may communicate withother computing resources 715 via wired connections, wirelessconnections, or a combination of wired and wireless connections.

As further shown in FIG. 7, one or more of the computing resources 715may include a group of cloud resources, such as one or more applications(“APPs”) 715-1, one or more virtual machines (“VMs”) 715-2, virtualizedstorage (“VSs”) 715-3, one or more hypervisors (“HYPs”) 715-4, and/orthe like.

The application 715-1 includes one or more software applications thatmay be provided to or accessed by the label management platform 710. Theapplication 715-1 may eliminate a need to install and execute thesoftware applications on the label management platform 710. For example,application 715-1 may include software associated with the labelmanagement platform 710 and/or any other software capable of beingprovided via the cloud computing environment 720. In someimplementations, one application 715-1 may send/receive informationto/from one or more other applications 715-1 via virtual machine 715-2.

The virtual machine 715-2 includes a software implementation of amachine (e.g., a computer) that executes programs like a physicalmachine. The virtual machine 715-2 may be either a system virtualmachine or a process virtual machine, depending upon use and degree ofcorrespondence to any real machine by the virtual machine 715-2. Asystem virtual machine may provide a complete system platform thatsupports execution of a complete operating system (“OS”). A processvirtual machine may execute a single program and may support a singleprocess. In some implementations, the virtual machine 715-2 may executeon behalf of a user (e.g., an operator of the label management platform710), and may manage infrastructure of the cloud computing environment720, such as data management, synchronization, or long-duration datatransfers.

The virtualized storage 715-3 includes one or more storage systemsand/or one or more devices that use virtualization techniques within thestorage systems or devices of the computing resource 715. In someimplementations, within the context of a storage system, types ofvirtualizations may include block virtualization and filevirtualization. Block virtualization may refer to abstraction (orseparation) of logical storage from physical storage so that the storagesystem may be accessed without regard to physical storage orheterogeneous structure. The separation may permit administrators of thestorage system flexibility in how the administrators manage storage forend users. File virtualization may eliminate dependencies between dataaccessed at a file level and a location where files are physicallystored. This may enable optimization of storage use, serverconsolidation, and/or performance of non-disruptive file migrations.

The hypervisor 715-4 may provide hardware virtualization techniques thatallow multiple operating systems (e.g., “guest operating systems”) toexecute concurrently on a host computer, such as computing resource 715.The hypervisor 715-4 may present a virtual operating platform to theguest operating systems and may manage the execution of the guestoperating systems. Multiple instances of a variety of operating systemsmay share virtualized hardware resources.

The label modification unit 730 includes the raster print controller 732and a laser printhead (e.g., a single laser printhead) that can becontrolled by the raster print controller 732 to modify (e.g.,autonomously or semi-autonomously based on a label modification input)one or more rewriteable labels. The raster print controller 732 mayinclude one or more devices (e.g., one or more processors, one or morememories, and/or the like) that are capable of controlling one or morecomponents of the label modification unit 730, as described herein.

The network 740 includes one or more wired and/or wireless networks. Forexample, the network 740 may include a cellular network (e.g., a fifthgeneration (5G) network, a long-term evolution (LTE) network, a thirdgeneration (3G) network, a code division multiple access (CDMA) network,etc.), a public land mobile network (PLMN), a local area network (LAN),a wide area network (WAN), a metropolitan area network (MAN), atelephone network (e.g., the Public Switched Telephone Network (PSTN)),a private network, an ad hoc network, an intranet, the Internet, a fiberoptic-based network, and/or the like, and/or a combination of these orother types of networks.

The number and arrangement of devices and networks shown in FIG. 7 areprovided as one or more examples. In practice, there may be additionaldevices and/or networks, fewer devices and/or networks, differentdevices and/or networks, or differently arranged devices and/or networksthan those shown in FIG. 7. Furthermore, two or more devices shown inFIG. 7 may be implemented within a single device, or a single deviceshown in FIG. 7 may be implemented as multiple, distributed devices.Additionally, or alternatively, a set of devices (e.g., one or moredevices) of environment 700 may perform one or more functions describedas being performed by another set of devices of environment 700.

FIG. 8 is a diagram of example components of a device 800. Device 800may correspond to the label management platform 710, the labelmodification unit 730, the raster print controller 732, and/or the like.In some implementations, the label management platform 710, the labelmodification unit 730, and/or the raster print controller 732 mayinclude one or more devices 800 and/or one or more components of device800. As shown in FIG. 8, device 800 may include a bus 810, a processor820, a memory 830, a storage component 840, an input component 850, anoutput component 860, and a communication interface 870.

Bus 810 includes a component that permits communication among multiplecomponents of device 800. Processor 820 is implemented in hardware,firmware, and/or a combination of hardware and software. Processor 820is a central processing unit (CPU), a graphics processing unit (GPU), anaccelerated processing unit (APU), a microprocessor, a microcontroller,a digital signal processor (DSP), a field-programmable gate array(FPGA), an application-specific integrated circuit (ASIC), or anothertype of processing component. In some implementations, processor 820includes one or more processors capable of being programmed to perform afunction. Memory 830 includes a random access memory (RAM), a read onlymemory (ROM), and/or another type of dynamic or static storage device(e.g., a flash memory, a magnetic memory, and/or an optical memory) thatstores information and/or instructions for use by processor 820.

Storage component 840 stores information and/or software related to theoperation and use of device 800. For example, storage component 840 mayinclude a hard disk (e.g., a magnetic disk, an optical disk, and/or amagneto-optic disk), a solid state drive (SSD), a compact disc (CD), adigital versatile disc (DVD), a floppy disk, a cartridge, a magnetictape, and/or another type of non-transitory computer-readable medium,along with a corresponding drive.

Input component 850 includes a component that permits device 800 toreceive information, such as via user input (e.g., a touch screendisplay, a keyboard, a keypad, a mouse, a button, a switch, and/or amicrophone). Additionally, or alternatively, input component 850 mayinclude a component for determining location (e.g., a global positioningsystem (GPS) component) and/or a sensor (e.g., an accelerometer, agyroscope, an actuator, another type of positional or environmentalsensor, and/or the like) to navigate and/or control the labelmodification unit 730. Output component 860 includes a component thatprovides output information from device 800 (via, e.g., a display, aspeaker, a haptic feedback component, an audio or visual indicator,and/or the like). Additionally, or alternatively, output component 860may include and/or be associated with components of the labelmodification unit and/or one or more control devices (e.g.,electromechanical devices) configured to control components of the labelmodification unit and/or components of the placement device of exampleimplementation 100.

Communication interface 870 includes a transceiver-like component (e.g.,a transceiver, a separate receiver, a separate transmitter, and/or thelike) that enables device 800 to communicate with other devices, such asvia a wired connection, a wireless connection, or a combination of wiredand wireless connections. Communication interface 870 may permit device800 to receive information from another device and/or provideinformation to another device. For example, communication interface 870may include an Ethernet interface, an optical interface, a coaxialinterface, an infrared interface, a radio frequency (RF) interface, auniversal serial bus (USB) interface, a wireless local area networkinterface, a cellular network interface, and/or the like.

Device 800 may perform one or more processes described herein. Device800 may perform these processes based on processor 820 executingsoftware instructions stored by a non-transitory computer-readablemedium, such as memory 830 and/or storage component 840. As used herein,the term “computer-readable medium” refers to a non-transitory memorydevice. A memory device includes memory space within a single physicalstorage device or memory space spread across multiple physical storagedevices.

Software instructions may be read into memory 830 and/or storagecomponent 840 from another computer-readable medium or from anotherdevice via communication interface 870. When executed, softwareinstructions stored in memory 830 and/or storage component 840 may causeprocessor 820 to perform one or more processes described herein.Additionally, or alternatively, hardware circuitry may be used in placeof or in combination with software instructions to perform one or moreprocesses described herein. Thus, implementations described herein arenot limited to any specific combination of hardware circuitry andsoftware.

The number and arrangement of components shown in FIG. 8 are provided asan example. In practice, device 800 may include additional components,fewer components, different components, or differently arrangedcomponents than those shown in FIG. 8. Additionally, or alternatively, aset of components (e.g., one or more components) of device 800 mayperform one or more functions described as being performed by anotherset of components of device 800.

FIG. 9 is a flowchart of an example process 900 for control of laserprinthead for writing or erasing content. In some implementations, oneor more process blocks of FIG. 9 may be performed by a labelmodification unit (e.g., label modification unit 600, label modificationunit 730, and/or the like). In some implementations, one or more processblocks of FIG. 9 may be performed by another device or a group ofdevices separate from or including the device, such as a labelmanagement platform (e.g., label management platform 710) and/or thelike.

As shown in FIG. 9, process 900 may include receiving a labelmodification input that includes an image (block 910). For example, thelabel modification unit (e.g., using the raster print controller 732,the processor 820, the memory 830, the storage component 840, the inputcomponent 850, the output component 860, the communication interface870, and/or the like) may receive a label modification input thatincludes an image that is to be written to or erased from a label, asdescribed above. For example, the label may be a rewriteable label. Thelabel modification input may be received as a stream of input. The imagemay be depicted by one or more pixels.

As further shown in FIG. 9, process 900 may include processing the labelmodification input to determine a bitmap for raster printing the imagevia the light beam (block 920). For example, the label modification unit(e.g., using the raster print controller 732, the processor 820, thememory 830, the storage component 840, the input component 850, theoutput component 860, the communication interface 870, and/or the like)may process the label modification input, using binary image filtering,to determine a bitmap for raster printing the image. The labelmodification input may be processed to determine the bitmap, asdiscussed above. The bitmap may be a binary bitmap that includes a bit(e.g., 1) indicating a content item (e.g., a pixel) to written to thelabel and another bit (e.g., 0) indicating a content element (e.g., apixel) to be erased from the label.

As further shown in FIG. 9, process 900 may include determining, basedon the bitmap, an array of power levels for the light beam to modify therewriteable label to include the image (block 930). For example, thelabel modification unit (e.g., using the raster print controller 732,the processor 820, the memory 830, the storage component 840, the inputcomponent 850, the output component 860, the communication interface870, and/or the like) may determine, based on the bit map, an array ofpower factors for the light beam to modify the rewriteable label, asdescribed above. As explained above, the power factors may includeinformation identifying (e.g., non-binary bits) identifying differentpower levels for the light beam to modify the rewriteable label.Accordingly, the array of power factors may be a non-binary bitmapcorresponding to the bitmap.

The label modification unit may determine a power level (for the lightbeam) for each bit of the bitmap based on the value of the bit, asexplained above. When determining the power lever, the labelmodification unit may account for heat dissipation. For example, thelabel modification unit may compare a first bit of the bitmap to asecond bit of the bitmap that is adjacent to the first bit and assign apower level based on whether the first bit and the second bit are a samevalue. For example, the first bit and the second bit may adjacent ifthey are on the same column of the bitmap but on different rows of thebitmap (the second bit on a row immediately below a row of the firstbit). In this regard, if a value of the first bit and the second bit isone (1), then the label modification unit may assign a power level oftwo (2) or higher, as explained above. Alternatively, if a value of thefirst bit and the second bit is zero (0), then the label modificationunit may assign a power level of zero (0), as explained above.Alternatively, if a value of the first bit is one (1) and the value ofthe second bit is zero (0), then the label modification unit may assigna power level one (1) to the first bit and a power level of zero (0) tothe second bit to prevent or reduce heat dissipation that would haveotherwise occurred if the first bit was assigned a power level of two(2) or higher for writing content. Conversely, if a value of the firstbit is zero (0) and the value of the second bit is one (1), then thelabel modification unit may assign a power level zero (0) to the firstbit and a power level of one (1) to the second bit to prevent or reduceheat dissipation that would have otherwise occurred if the second bitwas assigned a power level of two (2) or higher.

Alternatively, the label modification unit may determine, based on thefirst bit, a first desired temperature profile of the rewriteable labelto depict a first pixel of the image on the rewriteable label anddetermine, based on the second bit, a second desired temperature profileof the rewriteable label to depict a second pixel of the image on therewriteable label. The label modification unit may assign a power levelbased on a difference between the first desired temperature profile andthe second desired temperature. For example, if the first desiredtemperature profile is associated with writing content (relatively hightemperature and corresponding slow cooling rate) and the second desiredtemperature profile is associated with erasing content (relatively lowtemperature and corresponding fast cooling rate), then the labelmodification unit may assign a power level one (1) to the first bit anda power level of zero (0) to the second bit to prevent or reduce heatdissipation that would have otherwise occurred if the first bit wasassigned a power level of two (2) or higher for writing content.Conversely, if the first desired temperature profile is associated witherasing content and the second desired temperature profile is associatedwith writing content, then the label modification unit may assign apower level zero (0) to the first bit and a power level of one (1) tothe second bit to prevent or reduce heat dissipation that would haveotherwise occurred if the second bit was assigned a power level of two(2) or higher.

Alternatively, the label modification unit may determine a quantity ofbits between the first bit and the second bit along a raster print pathof the laser printhead and assign based on the quantity of bits. Forexample, the quantity of bits may be indicative heat dissipation. Forinstance, the quantity of bits may be indicative of a cooling ratebetween emitting the light beam for the first bit and emitting the lightbeam for the second bit.

The label modification unit may determine the power levels based onidentifying a characteristic associated with the rewriteable label orthe laser. The characteristic may include thermal sensitivity of therewriteable label and/or a range of power levels associated with thelaser. For example, the label modification unit may determine aconfiguration associated with the laser to determine the range of powerlevels. In this regard, the configuration may indicate capabilities ofthe laser with respect to power level range and/or cooling capability.

As further shown in FIG. 9, process 900 may include controlling, basedon the array of power levels, the laser and the reflector system toraster print the image on the rewriteable label (block 940). Forexample, the label modification unit (e.g., using the raster printcontroller 732, the processor 820, the memory 830, the storage component840, the input component 850, the output component 860, thecommunication interface 870, and/or the like) may control aconfiguration of the laser, the optical element, and/or the reflectorsystem to raster print the image, as described above. For instance, thelabel modification unit may cause the laser to emit the light beam towrite pixels or erase pixels of the rewriteable label to depict theimage.

When causing the laser to emit the light beam, the label modificationunit may select a raster print path, as described above, and may controlthe light beam to follow, using a reflector system of the laserprinthead, a raster print path defined by the array of power factors.

Although FIG. 9 shows example blocks of process 900, in someimplementations, process 900 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 9. Additionally, or alternatively, two or more of theblocks of process 900 may be performed in parallel.

FIG. 10 is a flowchart of an example process 1000 for control of laserprinthead for writing or erasing content. In some implementations, oneor more process blocks of FIG. 10 may be performed by a labelmodification unit (e.g., label modification unit 600, label modificationunit 730, and/or the like). In some implementations, one or more processblocks of FIG. 10 may be performed by another device or a group ofdevices separate from or including the device, such as a labelmanagement platform (e.g., label management platform 710) and/or thelike.

As shown in FIG. 10, process 1000 may include obtaining a bitmapassociated with a modification to the rewriteable label (block 1010).For example, the label modification unit (e.g., using the raster printcontroller 732, the processor 820, the memory 830, the storage component840, the input component 850, the output component 860, thecommunication interface 870, and/or the like) may obtain a bitmapassociated with a modification to the rewriteable label, as describedabove. The bitmap may be generated from a label modification input thatincludes an image.

As further shown in FIG. 10, process 1000 may include determining, basedon the bitmap and using a heat dissipation model, temperature profilesfor a plurality of raster print paths of the laser (block 1020). Forexample, the label modification unit (e.g., using the raster printcontroller 732, the processor 820, the memory 830, the storage component840, the input component 850, the output component 860, thecommunication interface 870, and/or the like) may determine, based onthe bitmap and using a heat dissipation model, temperature profiles fora plurality of raster print paths of the laser, as described above. Thetemperature profiles may indicate expected temperatures during themodification of pixel locations along the raster print path.

To determine the temperature profiles, the label modification unit maydetermine laser heat dissipation factors associated with emitting thelight beam to modify the rewriteable label according to individual powerfactors of the array of power factors. For example, the heat dissipationfactors may be determined based on heat dissipation associated with apower level for a first bit of the bitmap and a power level for a secondbit of the bitmap (adjacent to the first bit on the bitmap), asdescribed above. The label modification unit may determine optical heatdissipation factors associated with positioning an optic of the labelmodification unit to modify the rewriteable label according toindividual power factors of the array of power factors. For example, theoptic may be configured to control a spot size of the light beam basedon a position of the optic relative to the laser. The label modificationmay determine the optical heat dissipation factors based onspecifications of the laser and the optic. The specifications may beobtained from the label management platform (described herein), a userdevice (described herein), a memory of the label modification unity,and/or the like. The label modification unity may determine the rasterprint path based on the laser heat dissipation factors and the opticalheat dissipation factors.

As further shown in FIG. 10, process 1000 may include selecting, basedon the temperature profiles and from the plurality of raster printpaths, a raster print path for the modification (block 1030). Forexample, the label modification unit (e.g., using the raster printcontroller 732, the processor 820, the memory 830, the storage component840, the input component 850, the output component 860, thecommunication interface 870, and/or the like) may select the rasterprint path for the modification according to a performancecharacteristic of the modification.

The performance characteristic may be determined based on a setting ofthe label modification unit and/or a user input to the labelmodification unit. The performance characteristic may include a shortestraster path between the pixel locations, a fastest time for writing thecontent, a minimum temperature variation for writing the content, aquality associated with writing the content, and/or the like.

As further shown in FIG. 10, process 1000 may include controlling atleast one of the laser, the optic, and the reflector system to: causethe light beam to follow the raster print path, and emit the light beamaccording to an array of power factors that are associated with theraster print path (block 1040). For example, the label modification unit(e.g., using the raster print controller 732, the processor 820, thememory 830, the storage component 840, the input component 850, theoutput component 860, the communication interface 870, and/or the like)may control at least one of the laser, the optic, and the reflectorsystem to: cause the light beam to follow the raster print path and emitthe light beam according to an array of power factors that areassociated with the raster print path. In this regard, the labelmodification unity may control a position of the optic relative to thelaser according to spot sizes of the array of power factors.

Although FIG. 10 shows example blocks of process 1000, in someimplementations, process 1000 may include additional blocks, fewerblocks, different blocks, or differently arranged blocks than thosedepicted in FIG. 10. Additionally, or alternatively, two or more of theblocks of process 1000 may be performed in parallel.

The above description refers to various operations described herein andflowcharts that may be appended hereto to illustrate the flow of thoseoperations. Any such flowcharts are representative of example methodsdisclosed herein. In some examples, the methods represented by theflowcharts implement the apparatus represented by the block diagrams.Alternative implementations of example methods disclosed herein mayinclude additional or alternative operations. Further, operations ofalternative implementations of the methods disclosed herein maycombined, divided, re-arranged or omitted. In some examples, theoperations described herein are implemented by machine-readableinstructions (e.g., software and/or firmware) stored on a medium (e.g.,a tangible machine-readable medium) for execution by one or more logiccircuits (e.g., processor(s)). In some examples, the operationsdescribed herein are implemented by one or more configurations of one ormore specifically designed logic circuits (e.g., ASIC(s)). In someexamples the operations described herein are implemented by acombination of specifically designed logic circuit(s) andmachine-readable instructions stored on a medium (e.g., a tangiblemachine-readable medium) for execution by logic circuit(s).

As used herein, each of the terms “tangible machine-readable medium,”“non-transitory machine-readable medium” and “machine-readable storagedevice” is expressly defined as a storage medium (e.g., a platter of ahard disk drive, a digital versatile disc, a compact disc, flash memory,read-only memory, random-access memory, etc.) on which machine-readableinstructions (e.g., program code in the form of, for example, softwareand/or firmware) are stored for any suitable duration of time (e.g.,permanently, for an extended period of time (e.g., while a programassociated with the machine-readable instructions is executing), and/ora short period of time (e.g., while the machine-readable instructionsare cached and/or during a buffering process)). Further, as used herein,each of the terms “tangible machine-readable medium,” “non-transitorymachine-readable medium” and “machine-readable storage device” isexpressly defined to exclude propagating signals. That is, as used inany claim of this patent, none of the terms “tangible machine-readablemedium,” “non-transitory machine-readable medium,” and “machine-readablestorage device” can be read to be implemented by a propagating signal.

In the foregoing specification, specific embodiments have beendescribed. However, one of ordinary skill in the art appreciates thatvarious modifications and changes can be made without departing from thescope of the invention as set forth in the claims below. Accordingly,the specification and figures are to be regarded in an illustrativerather than a restrictive sense, and all such modifications are intendedto be included within the scope of present teachings. Additionally, thedescribed embodiments/examples/implementations should not be interpretedas mutually exclusive, and should instead be understood as potentiallycombinable if such combinations are permissive in any way. In otherwords, any feature disclosed in any of the aforementionedembodiments/examples/implementations may be included in any of the otheraforementioned embodiments/examples/implementations.

The benefits, advantages, solutions to problems, and any element(s) thatmay cause any benefit, advantage, or solution to occur or become morepronounced are not to be construed as a critical, required, or essentialfeatures or elements of any or all the claims. The claimed invention isdefined solely by the appended claims including any amendments madeduring the pendency of this application and all equivalents of thoseclaims as issued.

Moreover, in this document, relational terms such as first and second,top and bottom, and the like may be used solely to distinguish oneentity or action from another entity or action without necessarilyrequiring or implying any actual such relationship or order between suchentities or actions. The terms “comprises,” “comprising,” “has”,“having,” “includes”, “including,” “contains”, “containing” or any othervariation thereof, are intended to cover a non-exclusive inclusion, suchthat a process, method, article, or apparatus that comprises, has,includes, contains a list of elements does not include only thoseelements but may include other elements not expressly listed or inherentto such process, method, article, or apparatus. An element proceeded by“comprises . . . a”, “has . . . a”, “includes . . . a”, “contains . . .a” does not, without more constraints, preclude the existence ofadditional identical elements in the process, method, article, orapparatus that comprises, has, includes, contains the element. The terms“a” and “an” are defined as one or more unless explicitly statedotherwise herein. The terms “substantially”, “essentially”,“approximately”, “about” or any other version thereof, are defined asbeing close to as understood by one of ordinary skill in the art, and inone non-limiting embodiment the term is defined to be within 10%, inanother embodiment within 5%, in another embodiment within 1% and inanother embodiment within 0.5%. The term “coupled” as used herein isdefined as connected, although not necessarily directly and notnecessarily mechanically. A device or structure that is “configured” ina certain way is configured in at least that way, but may also beconfigured in ways that are not listed.

The Abstract of the Disclosure is provided to allow the reader toquickly ascertain the nature of the technical disclosure. It issubmitted with the understanding that it will not be used to interpretor limit the scope or meaning of the claims. In addition, in theforegoing Detailed Description, it can be seen that various features aregrouped together in various embodiments for the purpose of streamliningthe disclosure. This method of disclosure is not to be interpreted asreflecting an intention that the claimed embodiments require morefeatures than are expressly recited in each claim. Rather, as thefollowing claims reflect, inventive subject matter may lie in less thanall features of a single disclosed embodiment. Thus, the followingclaims are hereby incorporated into the Detailed Description, with eachclaim standing on its own as a separately claimed subject matter.

The invention claimed is:
 1. A method, comprising: receiving, by adevice, a label modification input associated with an image; processing,by the device and using an image filtering, the label modification inputto convert the image to a bitmap for raster printing the image via alaser printhead; determining, by the device and based on the bitmap, anarray of power factors for a light beam that is configured to be emittedby a laser of the laser printhead and raster print the image, whereindetermining the array of power factors includes, for a power level ofthe array of power factors: (i) determining, based on a first bit of thebitmap, a first desired temperature profile of a rewriteable label todepict a first pixel of the image; (ii) determining, based on a secondbit of the bitmap, a second desired temperature profile of therewriteable label to depict a second pixel of the image; and (iii)assigning the power level based on a difference between the firstdesired temperature profile and the second desired temperature profile;and controlling, by the device, the laser of the laser printhead inassociation with raster printing the image on the rewriteable labelaccording to the array of power factors.
 2. The method of claim 1,wherein the first bit and the second bit are adjacent.
 3. The method ofclaim 1, further comprising: determining a quantity of bits between thefirst bit and the second bit along a raster print path of the laserprinthead; and assigning the power level based on the quantity of bits.4. The method of claim 1, wherein the array of power factors is anon-binary bitmap that corresponds to the bitmap.
 5. The method of claim1, wherein dimensions of the array of power factors are the same asdimensions of a pixel array of the image when depicted on the label. 6.The method of claim 1, wherein controlling the laser according to thearray of power factors comprises: causing the laser to emit the lightbeam to write pixels or erase pixels of the rewriteable label to depictthe image.
 7. A device, comprising: a memory; and a processor,communicatively coupled to the memory, configured to: receive an image;convert the image to a bitmap for raster printing the image via a laserprinthead; determine, based on the bitmap, an array of power factors fora light beam that is configured to be emitted by a laser of the laserprinthead, wherein the processor is configured, to determine the arrayof power factors, to: (i) determine, based on a first bit of the bitmap,a first desired temperature profile of a rewriteable label to depict afirst pixel of the image; (ii) determine, based on a second bit of thebitmap, a second desired temperature profile of the rewriteable label todepict a second pixel of the image; and (iii) assign a power level ofthe array of power factors based on a difference between the firstdesired temperature profile and the second desired temperature profile;and cause the laser printhead to emit the light beam to raster print theimage on the rewriteable label according to the array of power factors.8. The device of claim 7, wherein the processor, when determining thearray of power factors, is configured to: determine individual powerlevels, of the array of power factors, based on a raster print path ofthe laser printhead.
 9. The device of claim 8, wherein the raster printpath is based on a row and column configuration of the bitmap.
 10. Thedevice of claim 7, wherein the processor, when the determining the arrayof power factors, is configured to: determine individual power levels ofthe array of power factors for each of a plurality of distinct firstbits.
 11. The device of claim 7, wherein the bitmap is a binary bitmapand the array of power factors is a non-binary bitmap.
 12. The device ofclaim 7, wherein dimensions of the bitmap and dimensions of the array ofpower factors are the same as dimensions of a pixel array of the imagewhen depicted on the rewriteable label.
 13. The device of claim 7,wherein the processor, when causing the laser printhead to emit thelight beam, is configured to: control the laser printhead to emit thelight beam to write pixels or erase pixels of the rewriteable label todepict the image; and control the light beam to follow, using areflector system of the laser printhead, a raster print path defined bythe array of power factors.
 14. A label modification unit comprising: alaser configured to emit a light beam to modify a rewriteable label; areflector system to direct the light beam along a raster print path; anda controller configured to: receive a label modification input thatincludes an image; process the label modification input to determine abitmap for raster printing the image via the light beam; determine,based on the bitmap, an array of power factors for the light beam thatare configured to modify the rewriteable label with the image, whereinthe controller is configured, to determine the array of power factors,to: (i) determine, based on a first bit of the bitmap, a first desiredtemperature profile of the rewriteable label to depict a first pixel ofthe image; (ii) determine, based on a second bit of the bitmap, a seconddesired temperature profile of the rewriteable label to depict a secondpixel of the image; and (iii) assign a power level of the array of powerfactors based on a difference between the first desired temperatureprofile and the second desired temperature profile; and control, basedon the array of power factors, the laser and the reflector system toraster print the image on the rewriteable label.
 15. The labelmodification unit of claim 14, wherein the controller, when processingthe label modification input, is configured to: convert the image to thebitmap according to a raster configuration of the reflector system. 16.The label modification unit of claim 14, wherein the controller, whendetermining the array of power factors, is configured to: determine alaser configuration associated with the laser, and determine individualpower levels of the array of power factors based on the laserconfiguration.
 17. The label modification unit of claim 14, wherein thearray of power factors includes one or more of: a power level of thelaser, a spot size of the light beam, or a dwell time to modify a pixelof the label.
 18. The label modification unit of claim 14, furthercomprising: an optic that is configured to be in a fixed position duringraster printing.